• Introducing Java : 3 days

    1. Chapter 1Introduction to the Java Environment

      1. The Language, the JVM, and the Ecosystem
      2. A Brief History of Java and the JVM
      3. The Lifecycle of a Java Program
      4. Java Security
      5. Comparing Java to Other Languages
      6. Answering Some Criticisms of Java
    2. Chapter 2Java Syntax from the Ground Up

      1. Java Programs from the Top Down
      2. Lexical Structure
      3. Primitive Data Types
      4. Expressions and Operators
      5. Statements
      6. Methods
      7. Introduction to Classes and Objects
      8. Arrays
      9. Reference Types
      10. Packages and the Java Namespace
      11. Java File Structure
      12. Defining and Running Java Programs
      13. Summary
    3. Chapter 3Object-Oriented Programming in Java

      1. Overview of Classes
      2. Fields and Methods
      3. Creating and Initializing Objects
      4. Subclasses and Inheritance
      5. Data Hiding and Encapsulation
      6. Abstract Classes and Methods
      7. Modifier Summary
    4. Chapter 4The Java Type System

      1. Interfaces
      2. Java Generics
      3. Enums and Annotations
      4. Nested Types
      5. Lambda Expressions
      6. Conclusion
    5. Chapter 5Introduction to Object-Oriented Design in Java

      1. Java Values
      2. Important Methods of java.lang.Object
      3. Aspects of Object-Oriented Design
      4. Exceptions and Exception Handling
      5. Safe Java Programming
    6. Chapter 6Java’s Approach to Memory and Concurrency

      1. Basic Concepts of Java Memory Management
      2. How the JVM Optimizes Garbage Collection
      3. The HotSpot Heap
      4. Finalization
      5. Java’s Support for Concurrency
      6. Working with Threads
      7. Summary
  • Working with the Java Platform : 3 days

    1. Chapter 7Programming and Documentation Conventions

      1. Naming and Capitalization Conventions
      2. Practical Naming
      3. Java Documentation Comments
      4. Conventions for Portable Programs
    2. Chapter 8Working with Java Collections

      1. Introduction to Collections API
      2. Lambda Expressions in the Java Collections
      3. Conclusion
    3. Chapter 9Handling Common Data Formats

      1. Text
      2. Numbers and Math
      3. Java 8 Date and Time
      4. Conclusion
    4. Chapter 10File Handling and I/O

      1. Classic Java I/O
      2. Modern Java I/O
      3. NIO Channels and Buffers
      4. Async I/O
      5. Networking
    5. Chapter 11Classloading, Reflection, and Method Handles

      1. Class Files, Class Objects, and Metadata
      2. Phases of Classloading
      3. Secure Programming and Classloading
      4. Applied Classloading
      5. Reflection
      6. Dynamic Proxies
      7. Method Handles
    6. Chapter 12Nashorn

      1. Introduction to Nashorn
      2. Executing JavaScript with Nashorn
      3. Nashorn and javax.script
      4. Advanced Nashorn
      5. Conclusion
    7. Chapter 13Platform Tools and Profiles

      1. Command-Line Tools
      2. VisualVM
      3. Java 8 Profiles
      4. Conclusion